Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

239
Views
abra el shadowRoot "cerrado" del elemento insertado por otra extensión en Chrome

bueno, la extensión de traducción de Google en Chrome, tiene una función emergente, muestra la traducción de la palabra seleccionada al instante, quería acceder a las traducciones que se muestran en la ventana emergente, pero este elemento emergente es shadowRoot ("cerrado"), por lo que javascript no puede acceder a su contenido, yo rojo un artículo sobre ese tema y autor dice:

Pero realmente no hay nada que impida que alguien ejecute el siguiente JavaScript antes de la definición de su componente. Element.prototype._attachShadow = Element.prototype.attachShadow; Element.prototype.attachShadow = function () { return this._attachShadow( { mode: "open" } ); };

¿Es posible cambiar el método de adjuntar sombra de otra extensión? si es así, ¿dónde debería ser ejecutado por mi extensión? background_script o tal vez en algún lugar. Creo que cada extensión tiene su propio entorno y no tengo la oportunidad de editar sus métodos. Ojalá me equivoque :)

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

No es necesario anularlo. Simplemente use este método en el script de contenido:

 let shadowRoot = chrome.dom.openOrClosedShadowRoot(element);

No está en la documentación, pero aquí está su definición en el código fuente: enlace .

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!